#include <ctime>
#include <iostream>
#include <fstream>


using namespace std;


void bubbleSort(int list[], int listLength) {

while(listLength--) {

bool swapped = false;
for(int i = 0; i < listLength; i++) {
if(list[i] > list[i + 1]){

swap(list[i], list[i + 1]);
swapped = true;

}

}
if(swapped == false) break;

}

}

void read_from_file(const char *filename, int a[], int length) {
    ifstream file(filename);
    for(int i=0; i < length; i++)
        file >> a[i];

}
int main()
{
#define LEN 5000
int a[LEN];
read_from_file("m1_sorted.txt",a,LEN);

unsigned int t_start = clock();
bubbleSort(a,LEN);
unsigned int t_finish = clock();
unsigned int t_work = t_finish - t_start;
cout<<"m1_sorted " << t_work << " milliseconds \n";

read_from_file("m2_reverse.txt",a,LEN);
t_start = clock();
bubbleSort(a,LEN);
t_finish = clock();
t_work = t_finish - t_start;
cout<<"m2_reverse " << t_work << " milliseconds \n";

read_from_file("m3_shuffle.txt",a,LEN);
t_start = clock();
bubbleSort(a,LEN);
t_finish = clock();
t_work = t_finish - t_start;
cout<<"m3_shuffle " << t_work << " milliseconds \n";
return 0;
}
